﻿//
// *************************************************************************************
// WP-Framework
// 
// Developed by
// Lukas Kretschmar (lkretschmar.dev@bluewin.ch)
//
// Switzerland, Copyright (c) 2013 lkretschmar
// This content is released under the MIT License (http://opensource.org/licenses/MIT).
//     
// *************************************************************************************
//
//
			

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace KretschIT.WP_Fx.EasyMoq.Generator.Configurations
{
    internal class EasyMoqConfig : IEasyMoqInternalConfig
    {
        #region TargetNamespace

        private const string defaultTargetNamespace = "EasyMoq.Mocking";

        private string targetNamespace;

        public string TargetNamespace
        {
            get 
            {
                if (string.IsNullOrWhiteSpace(this.targetNamespace))
                {
                    return defaultTargetNamespace;
                }
                return this.targetNamespace; 
            }
            set
            {
                this.targetNamespace = value;
            }
        }

        #endregion

        #region Mock

        public void CreateMockFor<TMock>()
        {
            this.mockTypes.Add(typeof(TMock));
        }

        private List<Type> mockTypes = new List<Type>();

        public IEnumerable<Type> MockTypes
        {
            get { return this.mockTypes; }
        }

        #endregion
    }
}
